package com.chen.handler;


import com.chen.entity.vo.Result;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.RestControllerAdvice;


@RestControllerAdvice
// 捕获controller中所有的异常
//相当于@ControllerAdvice
//+
//@ResponseBody   响应内容到响应体当中
//这个类的作用就是, 写业务只用考虑成功的情况,  可以避免if的嵌套
//在if中写的都是不满足要求的情况, 对应位置抛出异常, 这个类会进行捕捉直接n返回给前端
public class GlobalExceptionHandler {
    //手动异常
    @ExceptionHandler(MyException.class)
    public Result error(MyException e){
        e.printStackTrace();
        return  Result.build(null, e.getCode(), e.getMessage());
    }
   //未处理异常
    @ExceptionHandler(Exception.class)
    public Result error(Exception e){
        e.printStackTrace();
        return Result.build(null,500,e.getMessage());
//        e.getMessage 拿到的是前面 自己throw new runtimeException("")  括号里面的内容
    }


}
